/**
 * 非法信息
 * @author rxliuli
 */
class MoIllegalInfo {
    /**
     * 构造函数
     * @param {Object} [option] 可选参数
     * @param {Number} [option.id] 主键，自增
     * @param {Number} [option.houseId] 所在机房， 引base_houseInfo 表主键
     * @param {String} [option.ip] 应用IP
     * @param {String} [option.accessDomain] 访问域名
     * @param {String} [option.accessUrl] 访问网址
     * @param {Number} [option.accessCount] 访问次数
     * @param {String} [option.illegalInfo] 非法信息
     * @param {Number} [option.dangerFactor] 危险系数
     * @param {String} [option.dealStatus] 处置状态, 1: 域名放行, 2:  域名屏蔽, 3: 网址屏蔽 4 :未处置
     * @param {Date} [option.firstFoundTime] 首次发现时间
     * @param {Date} [option.lastFoundTime] 最近发现时间
     * @param {String} [option.urlSig] 网址签名，采用crc32算法值
     * @param {...Object} [option.args] 其他参数
     */
    constructor({
                    id,
                    houseId,
                    ip,
                    accessDomain,
                    accessUrl,
                    accessCount,
                    illegalInfo,
                    dangerFactor,
                    dealStatus,
                    firstFoundTime,
                    lastFoundTime,
                    urlSig,
                    disposer,
                    ...args
                } = {}) {
        this.id = id
        this.houseId = houseId
        this.ip = ip
        this.accessDomain = accessDomain
        this.accessUrl = accessUrl
        this.accessCount = accessCount
        this.illegalInfo = illegalInfo
        this.dangerFactor = dangerFactor
        this.dealStatus = dealStatus
        this.firstFoundTime = firstFoundTime
        this.lastFoundTime = lastFoundTime
        this.urlSig = urlSig
        this.disposer = disposer
        Object.assign(this, args)
    }
}